/*
 * Mazo.java
 *
 * Created on 27 de noviembre de 2005, 14:36
 *
 * To change this template, choose Tools | Template Manager
 * and open the template in the editor.
 */

package javamus;
import java.util.ArrayList;

public class Mazo {
    // ATRIBUTOS
    ArrayList cartasMazo = new ArrayList();
    ArrayList cartaAsignada = new ArrayList();
    
    // CONSTRUCTOR
    public Mazo() {
     for(int i = 0;i<=39;i++){
         Carta a1 = new Carta(i);
         cartasMazo.add(i,a1);
     }
    }
    
    /*
    *   METODOS
    */
    
    // Saca una carta del mazo
    public Carta sacarCarta(Carta c1){
        if (cartasMazo.size() == 1){
            System.out.print("AAAA");
            this.restaurar();
            cartasMazo.removeAll(cartaAsignada);
            Carta c = (Carta)cartasMazo.remove(Aleatorio.random(1,cartasMazo.size()));
            cartaAsignada.add(c);
            return c;        
        }
        else{
            
            cartaAsignada.remove(c1);
            Carta c = (Carta)cartasMazo.remove(Aleatorio.random(1,cartasMazo.size()));
            cartaAsignada.add(c);
            return c;
        }
        
    }
    
    // El mazo recupera todas las cartas
    public void restaurar(){
        cartasMazo.clear();
        for(int i = 0;i<=39;i++){
         Carta a1 = new Carta(i);
         cartasMazo.add(i,a1);
        }
     }
    
    // Muestra las cartas del mazo por I/O estandar
    public void imprimirMazo(){
     for(int i = 1;i<=cartasMazo.size()-1;i++){
         Carta a1;
         a1 =(Carta) cartasMazo.get(i);
         a1.verCarta();
     }
    }
    
    // Devuelve si True si no hay cartas en el mazo
    public boolean esVacio(){
        return cartasMazo.isEmpty();
    }
    
}
